package com.cci.kangdao.cipFleet.dto.response;

import lombok.Data;

import java.util.List;

/**
 * @ClassName 车辆健康评分
 * @Description TODO
 * @Author 商伟
 * @Date 2022/08/03 11:09 AM
 * @Version 1.0
 **/
@Data
public class CipHealthCheckResponse {

    // “nodata”: 暂无数据“red”: 红色告警“yellow”: 黄色告警“green”: 健康
    private String healthState;

    // 当healthState为nodata时，返回-1；当为红/黄色告警/健康返回具体分值，为(0,100]的正整数
    private Integer healthScore;

    // 子系统全部暂无数据，描述：暂无数据  子系统有一个为红色警告，描述：车辆存在严重故障，请立即维修；  子系统没有红色警告，但有黄色警告，描述：车辆有健康风险，建议检查；  子系统无红色警告&黄色警告，有绿色健康状态，描述：车辆状态良好，请继续保持
    private String healthDesc;

    private List<SubSysDetail> subSysDetail;

    @Data
    public static class SubSysDetail {

        //返回内容为动态更新，以下仅为举例：
        //非道路三阶段：返回设备操作和维保，进排气系统，冷却系统，润滑系统，其它
        //非道路四阶段：返回设备操作和维保，尿素相关，后处理系统，进排气系统，冷却系统，润滑系统，其它
        //国六柴油机：返回用车行为，油液相关，起动系统，后处理系统，进排气系统，冷却系统，润滑系统，其它
        //国六气体机：返回动力表现，燃气系统，点火系统，后处理系统，进排气系统，冷却系统，润滑系统，锁车，油门，其他
        //国五：返回用车行为，尿素相关，进排气系统，冷却系统，润滑系统，其它
        private String subSysName;

        //“nodata”: 暂无数据“red”: 红色告警“yellow”: 黄色告警“green”: 健康
        private String subSysHealthState;

        //subSysHealthState为nodata时，返回-1；当为红/黄色告警/健康返回具体分值，为(0,100]的正整数
        private String subSysHealthScore;

        //根据具体情况返回
        private String subSysHealthDesc;

    }

}